﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Xml.Serialization;
using System.Xml;
using System.IO;
using SForceOPService;
using DataLayer.dbml;
using DataLayer.Controller;

public partial class services_Opportunity : cGlobal
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //899999115-00
            if (Request.QueryString["NIT"] != null)
            {
                //dropDownFill<CLIENTE_FINAL>(ddlClient, FinalClientController.GetAllByCuenta(Request.QueryString["NIT"].ToString(), string.Empty), "NOMBRE_CLIENTEFINAL", "ID_CLIENTEFINALSDFC", "------", "-1");
                ////Se agrega opcion para "Otro"
                //ddlClient.Items.Add(new ListItem("Otro", "0"));

                //DataTable dtAnchoBanda = OpportunityController.GetArticulos();
                //dropDownFill(this.ddlAnchoBanda, dtAnchoBanda, "ARTICULO1", "ARTICULO1", null, null);
                //this.ddlAnchoBanda.SelectedIndex = 0;            
            }
        }
    }

    protected void ddlClient_SelectedIndexChanged(object sender, EventArgs e)
    {
        //Si se selecciono la opcion "Otro" se hace visible textbox para que se ingrese nombre del nuevo cliente
        //if (this.ddlClient.SelectedValue == "0")
        //{
        //    this.lblNitNuevoCliente.Visible = true;
        //    this.txtNitNuevoCliente.Visible = true;
        //    this.lblNuevoCliente.Visible = true;
        //    this.txtNuevoCliente.Visible = true;            
        //}
        //else
        //{
        //    this.lblNitNuevoCliente.Visible = false;
        //    this.txtNitNuevoCliente.Visible = false;
        //    this.lblNuevoCliente.Visible = false;
        //    this.txtNuevoCliente.Visible = false;        
        //}
    }

    protected void btnCreate_Click(object sender, EventArgs e)
    {
        //string cuentaSF = "";
        //DataTable dtt = FinalClientController.GetById(this.ddlClient.SelectedValue);
        //if (dtt.Rows.Count > 0)
        //{
        //    cuentaSF = dtt.Rows[0]["idCuenta"].ToString();
        //}        

        ////SFAuthentication();
        //DataLayer.SForceOPService.parametrosOportunidad OPParameter = new DataLayer.SForceOPService.parametrosOportunidad();
        //OPParameter.strIdClienteFinalSFDC = this.ddlClient.SelectedValue;
        //OPParameter.strNuevoClienteFinal = "";
        //OPParameter.strIdCuentaSFDC = cuentaSF;
        //OPParameter.strEtapa = lblStage.Text;
        //OPParameter.strAnchoBanda = this.ddlAnchoBanda.SelectedValue;
        //OPParameter.strDescripcion = "Cerrado";
        //OPParameter.strPrecio = Convert.ToDouble(this.txtPrice.Text.Trim());
        //OPParameter.strNombreOportunidad = this.txtName.Text.ToUpper();
        //OPParameter.strNitClienteFinal = "";

        ////Si se eta creando un nuevo cliente
        //if (this.ddlClient.SelectedValue == "0")
        //{
        //    OPParameter.strIdClienteFinalSFDC = "";
        //    OPParameter.strNuevoClienteFinal = this.txtNuevoCliente.Text.Trim().ToUpper();
        //    OPParameter.strNitClienteFinal = this.txtNitNuevoCliente.Text.Trim();
        //}                
        //OPParameter.strPrecioSpecified = true;
                
        ////creaOportunidadRespuesta_cls OPResult = OPService.creaOportunidad_ws(OPParameter);
        //DataLayer.SForceOPService.creaOportunidadRespuesta_cls OPResult = SFController.CrearOportunidad(OPParameter);

        //if (OPResult.strEstadoTransaccion.Equals("Fallida"))
        //    this.lblMensaje.Text = "No se realizó la transacción: " + OPResult.strObservaciones;
        //else
        //{
        //    this.lblMensaje.Text = "La oportunidad ha sido creada con el número: " + OPResult.strCodigoOportunidad;

        //    //Se crea la oportunidad en las tablas del portal
        //    OPORTUNIDAD opo = new OPORTUNIDAD();
        //    opo.ID_OPORTUNIDADSDFC = OPResult.strIdOportunidadSDFC;
        //    opo.ID_OPORTUNIDAD = OPResult.strCodigoOportunidad;
        //    opo.NOMBRE_OPORTUNIDAD = this.txtName.Text.ToUpper();
        //    opo.ETAPA = "Contacto inicial 10%";
        //    opo.ID_PROYECTOSFDC = OPResult.strIdProyectoSFC;
        //    opo.ANCHO_BANDA = this.ddlAnchoBanda.SelectedValue;

        //    OpportunityController.Insert(opo);

        //    //Se crea el cliente si es nuevo
        //    if (this.ddlClient.SelectedValue == "0")
        //    {
        //        CLIENTE_FINAL clienteFinal = new CLIENTE_FINAL();
        //        clienteFinal.ID_CLIENTEFINALSDFC = OPResult.strIdClienteFinal;
        //        clienteFinal.NIT_CLIENTEFINAL = OPResult.strNitCienteFinal;
        //        clienteFinal.NOMBRE_CLIENTEFINAL = OPResult.strNombreClienteFinal.ToUpper();
        //        FinalClientController.Insert(clienteFinal);

        //        CUENTA_CLIENTEFINAL cuenta = new CUENTA_CLIENTEFINAL();
        //        cuenta.ID_CLIENTEFINALSDFC = OPResult.strIdClienteFinal;
        //        cuenta.ID_CUENTASFDC = cuentaSF;
        //        AccountFinalClientController.Insert(cuenta);
        //    }
        //}

        ////Registra log de transacciones
        //LOG_TRANSACCION objLog = new LOG_TRANSACCION();
        //objLog.TIPO_TRANSACCION = OPResult.strTipoTransaccion;
        //objLog.ELEMENTO_ENVIADO = DataLayer.Utilities.Utilidades.Serializar(OPParameter);
        //objLog.ESTADO = OPResult.strEstadoTransaccion;
        //objLog.OBSERVACION = OPResult.strObservaciones;
        //objLog.ENVIOS = 1;
        //LogTransactionController.Insert(objLog);        
    }

}
